package com.tabjin.rfidsocket.mapper.mapper;

import com.tabjin.rfidsocket.pojo.SysDept;
import com.tabjin.rfidsocket.pojo.vo.SysDeptVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface SysDeptCustomMapper {
    /**
     * 获取子部门
     *
     * @param level 部门level
     * @return
     */
    List<SysDeptVO> getChildDeptListByLevel(@Param("level") String level);

    /**
     * 批量更新level
     *
     * @param sysDeptVOList 部门列表
     */
    void batchUpdateLevel(@Param("sysDeptList") List<SysDeptVO> sysDeptVOList);

    /**
     * 判断数据是否有重复
     *
     * @param parentId 父级id
     * @param name     部门名称
     * @param id       部门id
     * @return
     */
    Integer countByNameAndParentId(@Param("parentId") Integer parentId,
                                   @Param("name") String name,
                                   @Param("id") Integer id);

    /**
     * 查询以deptId为parentId的部门，即为子部门
     *
     * @param deptId
     * @return
     */
    Integer countByParentId(@Param("deptId") Integer deptId);
}
